﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using BneyBaruch.Ingest.MorningLesson.Services;
using BneyBaruch.Ingest.MorningLesson.Services.Data;

namespace BneyBaruch.Ingest.MorningLesson.WorkflowCommunication.VideoCaptureBoxServer
{
    public class SplittedVideoCaptureBoxServerCallback : ISplitedVideoCaptureBoxServerCallback
    {
        #region Fields

        private readonly IVideoCaptureBoxServerExchangeService videoCaptureBoxServerExchangeService;

        #endregion

        #region Constructors

        public SplittedVideoCaptureBoxServerCallback(IVideoCaptureBoxServerExchangeService videoCaptureBoxServerExchangeService)
        {
            if (videoCaptureBoxServerExchangeService == null)
                throw new ArgumentNullException("videoCaptureBoxServerExchangeService");

            this.videoCaptureBoxServerExchangeService = videoCaptureBoxServerExchangeService;
        }

        #endregion

        #region IVideoCaptureBoxServerCallback Members

        public void ReportCaptureBoxStatus(CaptureBoxStatus captureBoxStatus)
        {
            throw new NotImplementedException();
        }

        public void ReportFileSystemStatus(FileSystemStatus fileSystemStatus)
        {
            videoCaptureBoxServerExchangeService.NotifyFileSystemBeforeRecordingCommandCompletedOnSplittedVideoCaptureBoxServer(fileSystemStatus.WorkflowInstanceId);
        }

        #endregion
    }
}
